1. Technical Field
The present invention relates to a method of event notification for use over a communications network, and more particularly to a method of event notification wherein an entity property state is communicated to a user simultaneously with a communications channel identifier for a channel where future changes of state of the property (events) will be announced.
2. Related Art
Event notification is the process of informing a number of user entities about some event in which they are interested. This event can be considered to be the act of a change of state.
Typically the state is located, or accessed, through a computing device that acts as a server of this state to interested clients. The request-reply paradigm is often used in computing to describe the synchronous access of a client to this state. The term synchronous is used because the request and reply form a single transaction with the client waiting for the reply from the server. Examples of this type of operation include access to web servers, file stores, databases, remote sensors, and even remote procedure calls to software objects or components.
Other forms of communication are considered to be asynchronous. The passing of messages or announcements from the server that generates them to the client is such a communication. The clients do not know when to expect such a communication, and can perform other tasks in the meantime. The server can be considered to be notifying the client about some change in state. Further announcements about state changes will continue to arrive without any action on the part of the client. Content distribution where information is pushed from the server to the client is similar. The difference between event notification and content distribution is perhaps only the timeliness of the messages. Event notification concerns clients that do not know when the next event notification will occur, whereas in some content distribution applications the content is streamed continuously. For example, in a video stream the client has a reasonable expectation of when the next video frame will arrive. Hence, event notification might be considered to be a sub category of content distribution, with different timeliness requirements. Content distribution can also differ from event notification in that content changes are sometimes only pushed as far as a local cache from where they are pulled by the client.
Asynchronous applications have a number of options as to when and what data they transmit, and how this arrives at the clients. Typically this is done using a publish-subscribe access paradigm. Clients subscribe to the server if they are interested, often giving their interest profiles. The server will then distribute information to those clients that are interested, until the clients tell them to stop.
Another other common method is to transmit continuously to some channel(s), and to let the clients decide what to listen to. A channel here is used to mean some identifiable communications feed to which the client can discretely listen. Since the number of channels is often limited by some physical resource, clients will often have to throw away unwanted information that also appears on the channel that it is monitoring.
Hybrid examples can also exist, as shown in FIG. 1. Here, the originating server 10 sends announcement messages to an intermediate message server 14 providing message queues to which end clients 12 can subscribe. Sending the message to a queue on the intermediate message server 14 can be considered similar to sending to a broadcast channel, while the clients still subscribe to the (intermediate) server. Similarly, when using multicast networks, the data is sent to a group identity, and the clients subscribe to the group by joining the multicast channel. In the Generic Announcement Protocol (GAP) described in our earlier co-pending International Patent application no. PCT/GB01/02681 filed Jun. 15, 2001 (U.S. Ser. No. 10/276,996 filed Nov. 20, 2002, now U.S. Pat. No. 7,400,625 issued Jul. 15, 2008), the clients subscribe to a local listener. This subscription to the notification communication channel can be considered different to the subscription to the server originating the notification. Unified technologies might back-propagate the communication channel subscription to the originating server(s). This is only possible where the subscription categorisation is shared between the communication channel and the originating server (such as in content classified messaging servers or caching content distribution networks).